"""
(1)有个人Tom设计他的成员变量,成员方法,可以进行电脑猜拳,电脑每次都会随机生成 0 ， 1  ，2
(2)0表示 石头 1表示剪刀   2表示布
(3)并要可以显示Tom的输赢次数(清单)
思路分析
类 Tom
属性 : name : 姓名  shou : 出拳类型  do_list
行为 : caiquan

"""
import random


class Tom:
    name = None
    shou_type = None
    do_list = None

    def __init__(self, name , do_list):
        self.name = name
        self.do_list = do_list

    def caiquan(self , shou_type):
        self.shou_type = shou_type
        com_shou_type = random.randint(0, 2)
        # print(f"com_shou_type->{com_shou_type} , show_type -> {self.shou_type}")
        if self.shou_type == com_shou_type:
            res_temp = '平局'
        else:
            # 0:石头  1.剪刀  2.布
            # 人出的石头，电脑出剪刀
            if self.shou_type == 0 and com_shou_type == 1:
                res_temp = '赢'
            elif self.shou_type == 0 and com_shou_type == 2:
                res_temp = '输'
            elif self.shou_type == 1 and com_shou_type == 0:
                res_temp = '输'
            elif self.shou_type == 1 and com_shou_type == 2:
                res_temp = '赢'
            elif self.shou_type == 2 and com_shou_type == 0:
                res_temp = '赢'
            elif self.shou_type == 2 and com_shou_type == 1:
                res_temp = '输'
        res = f"{self.name}：{self.shou_type} - computer : {com_shou_type} : 结果 {res_temp}"
        self.do_list.append(res)

    def qingdan(self):
        print("-----------------清单列表----------------------")
        for i in range(0 , len(self.do_list)):
            print(self.do_list[i])

tom = Tom("tom" , [])
#第一次猜拳  化繁为简，先死后活
# tom.caiquan(0)
# tom.caiquan(1)
# tom.caiquan(2)

while(True):
    keys = int(input("0:石头  1.剪刀  2.布 9:退出"))
    if keys != 9:
        tom.caiquan(keys)
    tom.qingdan()
    if keys == 9:
        print("你已经退出了系统")
        break
tom.qingdan()


#自己已经完成了需求
#做游戏  然后理清楚逻辑  最后  得到游戏的列表 很不错